Equipment monitoring system and method

ABSTRACT

An apparatus and method that includes attaching a controller to a piece of equipment so that it may be monitored from a remote location. The controller communicates to an apparatus as to the operability and condition of the equipment. This data is stored and available for viewing. The apparatus also alerts appropriate individuals to any problems when detected.

[0001] This application claims priority to the provisional U.S. patent application entitled, Cryosoft, filed Dec. 22, 2000, having a Ser. No. 60/257,173, the disclosure of which is hereby incorporated by reference.

FIELD OF THE INVENTION

[0002] The present invention relates generally to monitoring of equipment. More particularly, the present invention relates to remote site monitoring through the use of embedded devices in the equipment.

BACKGROUND OF THE INVENTION

[0003] A large number of companies, universities and even individuals purchase commercial equipment such as refrigerators or coolers for storing environmentally sensitive products for a variety of reasons such as experiments, research or storage. A great deal of time is spent monitoring this equipment to ensure it is functioning properly. Failure to do so could have dire consequences. The contents contained in the equipment could be destroyed if the device fails and the temperature inside becomes a hazard to the contents. Such a predicament can have significant financial burden on the owner of the equipment as well as those who have contents therein.

[0004] To help alleviate this potential threat, companies monitor the devices with a variety of means. Some solutions have been a built-in temperature gauge. The readout from the gauge can be placed on the outside or inside of the equipment. An individual, whose responsibility it is to monitor the equipment, must check the gauges to ensure operability.

[0005] However, this system or method is prone to error. For instance, if the gauge breaks and is pegged on the last known temperature, a simple reading of the gauge is not sufficient.

[0006] Furthermore, the gauge measures the overall temperature in the equipment. Some areas of the refrigerator might run colder or even warmer than what the temperature gauge is actually reporting. This could have a tremendous impact on specimens in these areas of the equipment.

[0007] Another error is that the individual monitoring the equipment cannot be on-site twenty-four hours a day and seven days a week. Systems break down at all times during the day. Extended periods without monitoring can be costly and damaging. To employ a system that uses a constantly staffed monitoring system would be time consuming and costly.

[0008] Finally, the products on the market today cannot predict upcoming service problems. Accordingly, it is desirable to provide a system that is capable of monitoring equipment on a continuous basis as well as predict possible failure, which is resolved in an efficient manner.

SUMMARY OF THE INVENTION

[0009] In a first aspect of the present invention, a method and an apparatus to monitor equipment and its performance from a remote location is provided. Furthermore, each piece of equipment is monitored to ensure that it is well-maintained within pre-defined limits. If the equipment deviates outside these limits, the invention takes action in-line with the user's wishes.

[0010] In another aspect of the invention, remote monitoring is accomplished by installing a controller into each piece of equipment that needs to be monitored. The equipment is then monitored by an apparatus that includes an input device, a display device and executable software and a communications device.

[0011] In another aspect of the present invention, a unique identifier is associated with each piece of equipment. The identifier is stored on the controller, which is attached to the equipment. Through the unique identifier, the apparatus tracks and monitors each piece of equipment. It monitors the equipment by transmitting a query from the apparatus to the controller. The controller responds by transmitting specific data back to the controller.

[0012] In another aspect of the present invention, the user is provided with the ability to control or adjust certain features of the equipment. In the preferred embodiment, the ability is exercised after data from the equipment is sampled. The data is then compared to pre-defined limits of operation. If the equipment is within the limits, then generally no action is taken. If the equipment is not within certain limits, then corrective action is taken in order to remedy the situation.

[0013] The corrective action can be a number of different options. For example, the action taken can result in adjusting the operational ability such as temperature and exhaust functions. It also can alert specific individuals or personnel as to the problem or potential problem.

[0014] In another aspect of the present invention, a view of the data collected is provided for a user. The data is stored for an extended period of time or it is held for a data-monitoring window and then released or cleared.

[0015] In another aspect of the invention, a method for remote diagnostic and control capability for equipment is provided. The method includes storing a unique identifier on a controller that is linked to a piece of equipment and monitoring the equipment through the controller with an apparatus that includes an input device, display device, a communications device and software code executed by the apparatus. A further step includes identifying to the software code what data to collect.

[0016] Another step is compiling the data from the equipment by querying the controller with a request for data. The data is gathered and stored for a fixed period of time or a longer period of time and made available for review by the apparatus. The gathered data, if desired, is compared to pre-selected limits of operational ability that are selected for the equipment. If the results are within the operational limits, then generally no action is taken. If the results of the comparison are outside the operational limits, then corrective action is taken.

[0017] The corrective action is predetermined and commences upon a triggering event. In a situation where the equipment is operating outside the ranges, this becomes the triggering event. The predetermined action is alerting individuals such as a user or technician. Alerting can be in the form of a text message or a pre-recorded voice message. The corrective action can also be to adjust the operational ability of the equipment.

[0018] In another aspect of the invention, remote diagnostic and control capability for equipment is provided. The capability includes means for storing a unique identifier on a controller, which is attached to the equipment and means for monitoring the equipment through the controller. In the preferred embodiment, the means for monitoring is an apparatus that includes an input device, display device, a communications device and software code executed by the apparatus.

[0019] Further elements of the device are means for selecting the data to be collected from the equipment. After the means for selection, means for compiling is accomplished by querying the controller with request for data.

[0020] Another aspect of the device is means for comparing the data received from the controller with pre-selected limits. If the results of the comparison are outside of the acceptable limits, then the apparatus proceeds with a predefined action. If the results of the comparison are within the acceptable limits, then no further action is taken. Some of the predefined actions are alerting an individual or a technician, as to the performance of the equipment, and/or adjusting certain features of the equipment. Alerting a person can be accomplished by sending a message or playing a prerecorded message.

[0021] There has thus been outlined, rather broadly, the more important features of the invention in order that the detailed description thereof that follows may be better understood, and in order that the present contribution to the art may be better appreciated. There are, of course, additional aspects of the invention that will be described below and which will form the subject matter of the claims appended hereto.

[0022] In this respect, before explaining at least one embodiment of the invention in detail, it is to be understood that the invention is not limited in its application to the details of construction and to the arrangements of the components set forth in the following description or illustrated in the drawings. The invention is capable of other embodiments and of being practiced and carried out in various ways. Also, it is to be understood that the phraseology and terminology employed herein, as well as the abstract, are for the purpose of description and should not be regarded as limiting.

[0023] As such, those skilled in the art will appreciate that the conception upon which this disclosure is based may readily be utilized as a basis for the designing of other structures, methods and systems for carrying out the several purposes of the present invention. It is important, therefore, that the claims be regarded as including such equivalent constructions insofar as they do not depart from the spirit and scope of the present invention.

BRIEF DESCRIPTION OF THE DRAWINGS

[0024]FIG. 1 is a schematic illustrating several elements of a preferred embodiment of the present invention.

[0025]FIG. 2 is a flowchart illustrating the steps that may be followed in accordance with one embodiment of the present inventive method.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS OF THE INVENTION

[0026] A preferred embodiment of the present invention provides an apparatus that monitors and controls the operation of equipment such as high-grade appliances (e.g. industrial grade refrigerators or coolers that house environmentally sensitive products). The invention accomplishes this by the use of a controller that is attached to the equipment and able to communicate with the apparatus through a communication medium such as a direct connection or a network. The apparatus queries the equipment through the controller on a continuous basis to obtain status and operability of the equipment.

[0027] A preferred embodiment of the present invention is illustrated in FIG. 1. The present invention includes a personal computer equipped with a microprocessor. The invention further includes a display device, input device and a communications port 12, which in the preferred embodiment is an RS232 communications port with a 9600-baud rate. The RS232 output is transmitted through an RS485 converter 14 in order for it to communicate with the equipment 16.

[0028] The apparatus 10 can communicate with a plurality of equipment. The network topology employed resembles a Master/Slave relationship. The Master, apparatus 10, sends a query to a particular slave, equipment 16. The slave device then acts upon the received query and may or may not return a message to the master.

[0029] The apparatus 10 has by the ability to run executed software code. In the preferred embodiment, a personal computer is employed. However, one of skill in the art recognizes that a handheld device or a portable microprocessor unit is equally capable of running software code that enables the devices to communicate.

[0030] The serial number is a key component of the system, especially in the situation where the apparatus 10 is monitoring multiple pieces of equipment 16,18 not necessary identical in nature. The serial number is also referred as to a unique identifier.

[0031] In the preferred embodiment, the serial number is assembled using an array of data that is unique to the equipment. Table 1 below illustrates one such method for assembling the number. TABLE 1 Serial Number Format Field Name Example First Character Manufactured Month./Year S Two Digit Numeric Shipped Day 25 Second Character Manufactured Month/Year H Six Numeric Unique ID 383645 Two Character Shipped Month/Year TH Device Brand R Device Feature Set A Device Type 4

[0032] In this example, the serial number is compiled using a number of pieces of data that helps the apparatus 10 decode certain aspects of the equipment 14. This is not the only way to construct a number but it does aid in evaluating the piece of equipment as well as during the initial setup. The software code is able to deal with certain pieces of equipment by merely evaluating the last three bits of data on the serial number and comparing it to the acceptable limits of operation for that particular piece of equipment.

[0033] The serial number constructed, as detailed in Table 1, is helpful in situations where a third-party is monitoring the equipment. This third-party, in this instance, is usually referred to as a monitoring service. Therefore, when a problem does occur, the information contained in the serial is critical to diagnosing and properly servicing the equipment.

[0034] The query process involves the apparatus 10 communicating with the equipment 16 through the controller 20. The messages are sent space parity and are intended for only one apparatus 10. Just prior to these messages, the network address is broadcast at mark parity so that when the embedded device receives the mark address, twice consecutively, the controller 20 begins to turn its attention to the message received. In other words, it is placed into reading mode. This enables the equipment to listen for the specific types of messages.

[0035] For every outbound message, a known response is expected from a controller 20. Characteristics of the expected response, such as the number of bytes in the message and field parameters, are defined. In addition, the embedded controller can issue a longitudinal redundancy check failure error message. At any rate, the apparatus 10 can determine if a message has been received properly, in error, or not at all when one was expected. If a failure does occur, the specific query message is resent up to three times by the apparatus 10. On the third fail, the apparatus 10 removes the equipment 16 from the network and no features will be performed on this equipment 16 and an icon of the equipment 16 is updated indicating the communication fault mode. The communication fault mode is logged to a database.

[0036] At this point, the equipment 16 enters a communication recovery mode. At a defined time interval, the command query requesting the serial number for the equipment 16 is issued by the apparatus 10. If the correct response is received, the apparatus 10 will restore the equipment 16 on the network and update the icon appropriately. The restoration process is also logged to the communications error database. The user has the capability to view and generate reports from this database. In addition, the user can purge the database at anytime. The database also contains an integer error code, which provides useful diagnostic insight as to what the communications fault entails.

[0037] Below is a non-exhaustive list of queries and responses employed with the present invention for communication between the apparatus 10 and the equipment 16. These commands are designed to be transcribed by an 80C32 microcontroller. The message structure employed by the invention is a quasi-ASCII ModBUS message architecture. The error checking is commonly referred to as a longitudinal-redundancy-check.

[0038] A. Read Word From Embedded Internal Ram: Query: Read Word from Embedded Internal Ram: 9 bytes Byte Byte Byte Byte Byte Byte Byte Byte Byte 0 1 2 3 4 5 6 7 8 3Ah Net 03h N/A Address N/A N/A LRC Dah Address Low to (Adr) Read

[0039] Response: Read Word from Embedded Internal Ram: 8 bytes Byte Byte Byte Byte Byte Byte Byte Byte 0 1 2 3 4 5 6 7 3Ah Net 03h Byte High Mem Low LRC Dah Adr Count Data Byte Mem Data (always Byte 2h)

[0040] B. Write Word To Embedded Internal RAM

[0041] This command writes a word to the internal RAM memory in the controller. Query: Write Word to Embedded Internal Ram: 9 bytes Byte Byte Byte Byte Byte Byte Byte Byte Byte 0 1 2 3 4 5 6 7 8 3Ah Net 05h Adr Adr low Data Data LRC DAh Adr High to Write High Low to to to Write Write Write

[0042] Response: Write Word to Embedded Internal Ram: 9 bytes Byte Byte Byte Byte Byte Byte Byte Byte Byte 0 1 2 3 4 5 6 7 8 3Ah Net 05h Adr Adr Data Data LRC DAh Adr High Low High Low Written Written Written Written to to

[0043] C. Read Byte From Embedded EEPROM

[0044] This command reads a byte from an embedded EEPROM. Query: Read Byte From Embedded EEPROM: 9 bytes Byte Byte Byte Byte Byte Byte Byte Byte Byte 0 1 2 3 4 5 6 7 8 3Ah Net 0Ah N/A Adr to N/A N/A LRC DAh Adr Read

[0045] Response: Read Byte From Embedded EEPROM: 8 bytes Byte Byte Byte Byte Byte Byte Byte Byte 0 1 2 3 4 5 6 7 3Ah Net 0Ah Byte N/A Data LRC DAh Adr Count Read (always 01h)

[0046] D. Write Byte To Embedded EEPROM

[0047] This command writes a byte of data to the embedded EEPROM. Query: Write Byte to Embedded EEPROM: 9 bytes Byte Byte Byte Byte Byte Byte Byte Byte Byte 0 1 2 3 4 5 6 7 8 3Ah Net 0Bh N/A Adr to N/A Data to LRC DAh Adr Write Write

[0048] Response: Write Byte to Embedded EEPROM: 9 bytes Byte Byte Byte Byte Byte Byte Byte Byte Byte 0 1 2 3 4 5 6 7 8 3Ah Net 0Bh N/A Adr N/A Data LRC DAh Adr Written Written to

[0049] E. Read Word From Embedded External RAM

[0050] This command reads a word from external memory. Query: Read Word From Embedded External RAM: 9 bytes Byte Byte Byte Byte Byte Byte Byte Byte Byte 0 1 2 3 4 5 6 7 8 3Ah Net 07h Adr Adr Low N/A N/A LRC DAh Adr High to Read to Read

[0051] Response: Read Word From Embedded External RAM: 9 bytes Byte Byte Byte Byte Byte Byte Byte Byte Byte 0 1 2 3 4 5 6 7 8 3Ah Net 0Bh N/A Adr N/A Data LRC DAh Adr Written Written to

[0052] F. Write Word to Embedded External RAM

[0053] This command writes a word to external RAM memory. Query: Write Word to Embedded External RAM: 9 bytes Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6 Byte 7 Byte 8 3Ah Net Adr 04h Adr Adr Low Data Data LRC DAh High to Write High Low to to to Write Write Write

[0054] Response: Write Word to Embedded External RAM: 9 bytes Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6 Byte 7 Byte 8 3Ah Net Adr 04h Adr Adr Data Data LRC DAh High Low High Low Written Written Written Written to to

[0055] G. Read ADC Channel

[0056] This command accesses any of the eight analog-to-digital (ADC) channels and return the raw data in 12-bit unsigned format. Query: Read ADC Channel: 6 bytes Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 3Ah Net Adr 09h Chan# LRC Dah (0-7)

[0057] Response: Read ADC Channel: 8 bytes Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6 Byte 7 3Ah Net Adr 09h Chan # ADC ADC LRC Dah (0-7) High Low Data Data Byte Byte

[0058] H. Retrieve Serial Number:

[0059] This command returns the programmed 15-byte serial number of the device. Query: Retrieve Serial Number: 5 bytes Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 3Ah Net Adr 08h LRC DAh

[0060] Response: Read ADC Channel: 20 bytes Byte 3 to Byte Byte 0 Byte 1 Byte 2 17 Byte 18 Byte 19 3Ah Net Adr 08h 15-Byte LRC DAh Serial #

[0061] I. Force Delog Cycle

[0062] This command forces a delog cycle. All short-cycle restrictions are still in effect. Query: Force Delog Cycle: 5 bytes Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 3Ah Net Adr 06h LRC DAh

[0063] There is no response expected for this message query.

[0064] J. Set Local Network Address

[0065] This command sets the local network address. The preprogrammed serial number is sent and compared. If a match occurs the Net Adr field is defined as the local network address for the device. Query: Set Local Network Address: 20 bytes Byte 2 to Byte Byte 0 Byte 1 16 Byte 17 Byte 18 Byte 19 3Ah F5h 15 Byte Net Adr LRC DAh Serial #

[0066] K. Program Serial Number (Point to Point)

[0067] This command programs the serial number and only used on a Point-to-Point network topology. Query: Program Serial Number (Point to Point Only): 19 bytes Byte 2 Byte 3 Byte 0 Byte 1 to Byte 16 to Byte 17 Byte 18 3Ah F9h 15- LRC Dah Byte Serial #

[0068] Response: Program Serial Number (Point to Point Only): 5 bytes Byte 2 Byte 0 Byte 1 to Byte 16 Byte 3 Byte 18 3Ah F9h 31h LRC Dah

[0069] L. LRC Rx

[0070] This message can be the response of any query. Response: LRC Rx: 7 bytes Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6 3Ah FAh 33h Sent Calc LRC DAh LRC LRC

[0071] Additionally, the invention can become a Winsock (TCP/IP) server. In this mode, features are disabled. This allows a companion client application too remotely access (e.g. the interet) data from the apparatus 10 directly or any embedded control device on the user local area network (LAN). Below is a non-exhaustive list of command queries available with the Winsock connection.

Winsock Feature

[0072] A. Retrieve Device Serial Numbers

[0073] This command retrieves a comma-delimited list of all devices by serial number that a user has added to the LAN. It does not distinguish devices that maybe in communication failure mode. Query: Retrieve Device Serial Numbers: 7-Character Command Additional Information DEVICES

[0074] Response: Retrieve Device Serial Numbers

[0075] The response is a comma-delimite string list of all serial numbers that have been added to the users LAN.

[0076] B. Retrieve Communications Error Database

[0077] This command retrieves a database that contains communications fault information. Query: Retrieve Communications Error Database 7-Character Command Additional Information COMMERR

[0078] Response: Retrieve Communications Error Database

[0079] The actual database file used by the application.

[0080] C. Retrieve Telephone Call Database

[0081] This command retrieves a database that contains information regarding telephone alarm calls. Query: Retrieve Telephone Call Database 7-Character Command Additional Information PHONLOG

[0082] Response: Retrieve Telephone Call Database

[0083] The actual database file used by the application.

[0084] D. Retrieve E-Mail Database

[0085] This command retrieves a database that contains information regarding e-mail alarms. Query: Retrieve E-Mail Database 7-Character Command Additional Information EMAILLG

[0086] Response: Retrieve E-Mail Database

[0087] The actual DBF file used by the application.

[0088] E. Retrieve Remote Logon Database

[0089] This command retrieves a database that contains information regarding remote logons. Query: Retrieve Remote Logon Database 7-Character Command Additional Information REMACTL

[0090] Response: Retrieve Remote Logon Database

[0091] The actual DBF file used by the application.

[0092] F. Retrieve Historic Log Database

[0093] This command retrieves a database that contains information regarding the selected device performance. Query: Retrieve Historic Log Database 7-Character Command Additional Information HISTLOG Parameter 1-15 byte serial number as parameter

[0094] Response: Retrieve Historic Log Database

[0095] The actual historic log for the serial number sent as parameter 1 as a database file.

[0096] G. Retrieve Archived Historic Log Database

[0097] This command retrieves a database that contains information regarding the selected device performance. Query: Retrieve Historic Log Database 7-Character Command Additional Information HISTLGA Parameter 1-15 byte serial number as parameter

[0098] Response: Retrieve Historic Log Database

[0099] The actual archived historic log for the serial number sent as parameter one as a database file.

[0100] H. Read for Specific Device

[0101] This command reads messages of variable length (consecutive and increasing) memory locations from either internal or external RAM. Query: Read Specific Device 7-Character Command Additional Information READDEV Parameter 1—Read type (0 = RAM, 1 = Xdata, 2 = EEPROM, 4 = ADC) Parameter 2—Address Low Byte (ch for ADC type 0-7) Parameter 3—Address High Byte (not used for RAM, EEPROM or ADC) Parameter 4—Length (not used for XDATA or ADC)

[0102] Response: Read Specific Device

[0103] Varies by read type:

[0104] NOTE: could be “ERROR”

[0105] RAM>”RAM 0×0000=FF . . .” to length

[0106] XDATAA 0×0001=FF,XDATAA 0×0001=FF” (only retrieves two bytes)

[0107] EEPROM>“EEPROM 0×00-FF, EEPROM 0×01=FF . . .” to length

[0108] ADC>“ADC CHO=0.000”

[0109] I. Write for Specific Device

[0110] This command has the capability of reading variable length (consecutive and increasing) memory locations from either or external RAM. Query: Write Specific Device 7-Character Command Additional Information WRITEDV Parameter 1—Write type (0 = RAM, 1 = Xdata, 2 = EEPROM) Parameter 2—Address Low Byte Parameter 3—Address High Byte (not used for RAM, EEPROM) Parameter 4—Data High Low Byte Parameter 5—Data High Byte

[0111] Response: Read Specific Device

[0112] Varies by read type:

[0113] NOTE: values are read after written to determine this message could be

[0114] “ERROR”

[0115] RAM>”RAM 0×00=FF, RAM 0×01=FF”

[0116] XDATA 0×0000=FF,XDATAA 0×0001=FF”

[0117] EEPROM>“EEPROM 0×00=FF

[0118] J. Read Specific Device Alarm Status

[0119] This command retrieves a database that contains information regarding the selected device performance. Query: Retrieve Historic Log Database 7-Character Command Additional Information DEVSTAT Parameter 1-15 byte serial number as parameter

[0120] Response: Retrieve Historic Log Database

[0121] The software code, in the preferred embodiment, has a number of features for collecting and observing the data. The preferred embodiment provides four basic views for examining the data. They are (a) set-point; (b) data; (c) ten minute, real time graph; and (d) historic graph. These views provide the user with different insights to the currently selected device.

[0122] The set-point view allows the user to remotely select control parameters for a particular piece of equipment. It distinguishes between devices such as a minus thirty, minus 20 and plus 4 and ultra low temperature freezers as well as feature set ( e.g. A, B, C which correspond to house, private label with alarm and private label) in order to provide the correct adjustable parameters. The differentiation of the device types and features sets is determined by decoding the serial number of the device.

[0123] The set-point view requires the user to enter a password that has been previously been set in order for a change in settings to be accepted and written out to the embedded controller. If no activity occurs on the set-point view for thirty seconds, then the view times out.

[0124] The data view features the ability for the user to view the entire historic logging history database table for the selected device. The user selects the current data or the archived data table. This view also permits some basic statistical analysis. The user selects a range of records and have the average, minimum and maximum of the selected range reported in a message box. A report of the database can also be generated and printed.

[0125] The real-time graph or ten-minute history view collects current temperature data in a graphical format every fifteen seconds. Once ten minutes worth of data has been collected, approximately forty points, the most current data is displayed. If the selected device changes, then the ten-minute data buffer is cleared and commences to re-build ten minutes worth of data.

[0126] The historic logging view enables the user to select a data range and to look at the historic logging parameters for up to seven series on one graph. The user can select which logged variable to view on the graph. The user can also zoom and drag the graph to customize the graph. A hard copy of the graph is also obtainable.

Feature Set

[0127] The following are a few feature sets included in the software in the preferred embodiment.

[0128] A. Current Temperature Scan

[0129] This feature updates the current temperature in numeric format for the selected device. If the selected device changes, then numerical data is cleared at the next sixty-second rollover. The newly selected device will be queried and reported. This feature is independent of the current data view that the user has selected.

[0130] B. Alarm Scan

[0131] This feature scans all the devices that are on the users network every five minutes for active and past alarms for power failure, warm temperature and cold temperature alarm. If the device has any alarms, the icon in the device window is changed to an alarm icon visually indicating the alarm status temperature. This feature also looks for active warm alarm and cold alarms. If either alarm has been active for at least one hour for any device on the user's network, then a call is placed via a user-installed modem to a user entered telephone number. The call repeats a default message recorded as a WAV file.

[0132] C. Historic Logging

[0133] This feature scans all the devices with historic logging enabled at a user selectable interval. Current temperature, offset, set-point, warm alarm set-point, cold alarm set-point, and all the variables are recorded and time stamped to a database table for each device in the network.

[0134] D. Supervisory Utilities

[0135] This option allows programming of an original serial number or to overwrite a serial number on a point-to-point network. In addition, the user can read the voltage on any of the eight available ADC channels and have the voltage output to a window message box. The user can enter in any external RAM address and receive the data at that address and the one above it in memory.

[0136] E. Cumulative On-Time

[0137] This feature enables the user to determine the total cumulative on time performance for the selected device. It reports the seconds, minutes, hours, days, months and years that a device has been on.

[0138] F. Excursions

[0139] This feature allows users to remotely examine the excursions of the currently selected device.

[0140] G. Manufactured Date

[0141] This feature allows the user to know the manufactured data of the selected device in month, day and year format.

[0142] H. Shipped Date

[0143] The feature allows a user to determine the date in month format for when the selected device was shipped.

[0144] I. Force Delog

[0145] This feature allows a user too remotely force a delog cycle for the selected unit.

[0146]FIG. 2 is a flowchart illustrating the steps that may be followed in accordance with one embodiment of the present inventive method. The first step in this method is storing 22 a unique identifier into a controller 20 that is attached to the equipment 16 to be monitored. The next step in the method is monitoring 24 the equipment with an apparatus that has an input and display device as well as executable software stored on the device. The software executes a program that enables the apparatus 10 and the equipment 14 to communicate.

[0147] The software, in the preferred embodiment, queries the equipment over a user-defined interval. Prior to querying the equipment, the step of selecting 26 data to be collected is entered in by the user. Upon this selection, the step of querying 28 the equipment is sent by the executable code through communications device 12. Upon receipt of a query that was intended for the equipment, the next step of responding 30 is undertaken. Note that all queries do not require a response. However, a majority of them do.

[0148] After a response is received from the controller, the next step is compiling 32 the data at the apparatus. The data can be stored for an extended period of time or just until the next data collection period.

[0149] After compiling the data, the next step is comparing 34 the data with preset operational limits set by the user. If the data is within the limits, then generally no action is taken but the storing of the data. If the data is not within the limits, then alerting 36 is the next step. Alerting 36 can be sending a message or even making a prerecorded call to a selected individual.

[0150] The many aspects of the invention are apparent from the detailed specification, and thus, it is intended by the appended claims to cover all such aspects of the invention, which fall within the true spirit, and scope of the invention. Further, since numerous modifications and variations will readily occur to those skilled in the art, it is not desired to limit the invention to the exact construction and operation illustrated and described, and accordingly, all suitable modifications and equivalents may be resorted to, falling within the scope of the invention. 

What is claimed is:
 1. A device that provides diagnostic and control capability for equipment from a remote location comprising: an apparatus detached from the equipment comprising a display device, an input device, software executed by the apparatus and a communications device; and a controller attached to the equipment to enable monitoring of the equipment by the apparatus through the communications device.
 2. The device as in claim 1 wherein a unique identifier is stored on the controller.
 3. The device as in claim 1 wherein the controller is queried by the apparatus.
 4. The device as in claim 1 wherein the controller transmits data to the apparatus without being queried.
 5. The device of claim 4 wherein the data being transmitted is an indication detected by the controller of an equipment problem.
 6. The device as in claim 3 wherein the controller transmits data in response to the query.
 7. The device as in claim 3 wherein the controller is instructed by the software code to gather specific data about the equipment and transmitted to the to the apparatus.
 8. The device in claim 7 wherein the data is compiled by the software in a user preferred manner.
 9. The device of claim 7 wherein the data is collected for a specific period of time after which time the data is lost and a new data collection period begins.
 10. The device of claim 9 wherein the data is available for review by a user on the apparatus during the specific period of time.
 11. The device of claim 1 wherein the software code is programmed with acceptable operational limits for the equipment associated with the identifier.
 12. The device of claim 11 wherein the limits are compared to the data retrieved from said controller, if results are within the acceptable operational limits the data no further action is taken, if results are not within acceptable said limits then apparatus carries out a predefined task.
 13. The device of claim 12 wherein the predetermined task is alerting the user as to the condition.
 14. The device of claim 12 wherein the predetermined task is alerting a technician as to the performance of the equipment.
 15. The device of claim 12 wherein the predetermined task is transmitting data to the equipment to adjust certain operational features of the equipment.
 16. The device of claim 7 wherein the data is recorded and stored and available for review by the user.
 17. A method that provides remote diagnostic and control capability for equipment comprising: monitoring the equipment through a controller attached the equipment with a remote apparatus comprised of an input device, display device, a communications device and software code executed by the apparatus.
 18. The method of claim 17 further comprising the step of storing a unique identifier on a controller that is attached to the equipment.
 19. The method of claim 17, further comprising the step of: selecting with the software code specific data collection wherein the software code records the data of pre-selected features of the equipment.
 20. The method of claim 17 further comprising the step of: querying the controller with request for data, wherein the data is transmitted to the apparatus.
 21. The method of claim 20 further comprising the step of responding and transmitting a response to the query.
 22. The method of claim 21 further comprising the step of compiling of the data by the apparatus and stored for a period of time.
 23. The method of claim 22 wherein data collection is gathered for a fixed period of time after which the data is removed and a new data period is commenced.
 24. The method of claim 22 wherein the data is recorded and stored and available for review.
 25. The method of claim 22 further comprising the step of comparing the data received from the controller with pre-selected limits, if the results of the comparison are outside of the acceptable limits then the apparatus proceeds with a predefined action; if the results of the comparison are with the acceptable limits then no further action is taken.
 26. The method of claim 25 wherein the predefined action is alerting an individual.
 27. The method of claim 25 wherein the predefined action is alerting a technician as to the performance of the equipment.
 28. The method of claim 25 wherein the predefined action is transmitting data to the equipment to adjust certain features of the equipment.
 29. The method of claim 26 wherein alerting an individual is accomplished by sending a message.
 30. The method of claim 29 wherein the predefined action is playing a prerecorded message.
 31. A device that provides remote diagnostic and control capability for equipment comprising: remote means for monitoring the equipment through a controller attached to the equipment.
 32. The device of claim 31 wherein the means for monitoring is an apparatus that is comprised of an input device, display device, a communications device and software code executed by the apparatus.
 33. The device of claim 31, further comprising means for storing a unique identifier on the controller.
 34. The device of claim 31, further comprising means for selecting with software code specific data collection wherein the software code records the data of pre-selected features of the equipment.
 35. The device of claim 31 further comprising means for compiling the data from the equipment by querying the controller with request for data.
 36. The device of claim 35 wherein data collection is gathered for a fixed period of time after which the data is removed and a new data period is commenced.
 37. The device of claim 35 wherein the data is recorded and stored and available for review.
 38. The device of claim 35 further comprising means for comparing the data received from the controller with pre-selected limits, if the results of the comparison are outside of the acceptable limits then the apparatus proceeds with a predefined action, if the results of the comparison are with the acceptable limits then no further action is taken.
 39. The device of claim 38 wherein the predefined action is alerting an individual.
 40. The device of claim 39 wherein the predefined action is alerting a technician as to the performance of the equipment.
 41. The device of claim 38 wherein the predefined action is transmitting data to the equipment to adjust certain features of the equipment.
 42. The device of claim 39 wherein alerting an individual is accomplished by sending a message.
 43. The device of claim 42 wherein the predefined action is playing a prerecorded message. 